function gotoTop(speed, stime) {
    speed = speed || 0.1;
    stime = stime || 10;
    var x1 = 0;
    var y1 = 0;
    var x2 = 0;
    var y2 = 0;
    var x3 = 0;
    var y3 = 0;

    // 获取滚动条到页面顶部的水平距离
    if (document.documentElement) {
      x1 = document.documentElement.scrollLeft || 0;
      y1 = document.documentElement.scrollTop || 0;
    }

    // 获取滚动条到页面顶部的垂直距离
    if (document.body) {
      x2 = document.body.scrollLeft || 0;
      y2 = document.body.scrollTop || 0;
    }
    
    // 获取页面可视区域宽高度
    var x3 = window.scrollX || 0;
    var y3 = window.scrollY || 0;

    // 滚动条到页面顶部的水平垂直距离
    var x = Math.max(x1, Math.max(x2, x3));
    var y = Math.max(y1, Math.max(y2, y3));
    
    // 滚动距离 = 目前距离 / 10
    var speeding = 1 + speed;
    window.scrollTo(Math.floor(x / speeding), Math.floor(y / speeding));
    
    // 如果距离不为零继续调用函数,否则退出函数
    if (x > 0 || y > 0) {
        var run = "gotoTop(" + speed + ", " + stime + ")";
        window.setTimeout(run, stime);
    } else {
        window.clearInterval(run);
    }
  }